package org.md.budzik.problems;

import java.math.BigInteger;
import java.util.Map;

/**
 * Klasa reprezentująca zmienną w zadaniu.
 * @author Wiezzel
 *
 */
public class Variable extends Expression {

	private String name;
	
	public Variable(String name) {
		this.name = name;
	}

	public String toString() {
		return name;
	}

	public BigInteger value(Map<String,Integer> variables) throws ParseException {
		Integer value = variables.get(name);
		if (value == null)
			throw new ParseException("Nieznana zmienna: " + name);
		return BigInteger.valueOf(value.longValue());
	}

}